sysroot: Plug some leaks
authorKrzesimir Nowak <krzesimir@kinvolk.io>
Mon, 9 May 2016 13:11:18 +0000 (15:11 +0200)
committerColin Walters (automation) <walters+githubbot@verbum.org>
Mon, 9 May 2016 13:41:49 +0000 (13:41 +0000)
The deployments and booted deployment were never unreffed.

Also, remote (void) from the call to the unload function - it returns
nothing, so there is no need to fool the compiler.

Closes: #287
Approved by: cgwalters

src/libostree/ostree-sysroot.c

index b114a901b38fc078368f3321c6a487338fa57828..e05f5c29b3bf12c4fe470a9eead585f2ca5126b1 100644 (file)
@@ -70,10 +70,12 @@ ostree_sysroot_finalize (GObject *object)
   g_clear_object (&self->path);
   g_clear_object (&self->sepolicy);
   g_clear_object (&self->repo);
+  g_clear_pointer (&self->deployments, g_ptr_array_unref);
+  g_clear_object (&self->booted_deployment);
 
   glnx_release_lock_file (&self->lock);
 
-  (void) ostree_sysroot_unload (self);
+  ostree_sysroot_unload (self);
 
   G_OBJECT_CLASS (ostree_sysroot_parent_class)->finalize (object);
 }
@@ -873,7 +875,7 @@ ostree_sysroot_load_if_changed (OstreeSysroot  *self,
     }
 
   g_clear_pointer (&self->deployments, g_ptr_array_unref);
-  g_clear_pointer (&self->booted_deployment, g_object_unref);
+  g_clear_object (&self->booted_deployment);
   self->bootversion = -1;
   self->subbootversion = -1;